***************************************
*          @@  FLEX 3 @@              *                  
*                                     *
*   ------ >> Chapitre 5 << ------    *
*                                     *
***************************************


<mx:Button
	    id="btn_chercher"
	    x="10"
	    y="24"
	    label="Rechercher"
	    icon="@Embed(source='../image/iconeRechercher.gif')"
	    click="rechercher()"/>


  <mx:Button id="btn_partager"
              label="Partager Dossier"
              toggle="true"
  />




<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" borderColor="#F7F9FA" themeColor="#F6F9FB" horizontalAlign="center">
	<mx:Label x="15" y="74" text="Pourquoi avez-vous choisi Flex ?"/>
	
<mx:CheckBox x="49" y="100" label="Facilit d'utilisation" width="130" id="chbx_1"/>
	
<mx:CheckBox x="49" y="130" label="Complexit du code" width="156" id="chbx_2"/>
	
<mx:CheckBox x="49" y="160" label="Offre de nombreux composants" width="230" id="chbx_3" selected="true"/>

</mx:Application>




<mx:CheckBox x="49" y="160" label="Age > 18 ans ?" width="230" id="chbx_4" selected="true" change="changementEtat()"/>




<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
	
	<!-- Liste !-->
	<mx:List id="maListe" x="20" y="10"></mx:List>
	
	
	<!-- Liste droulante !-->
	<mx:ComboBox id="maListeDeroulante" x="268" y="11"></mx:ComboBox>

</mx:Application>




<mx:ComboBox id="combo_oiseau" x="10" y="29" selectedIndex="0"> 
      <mx:ArrayCollection>
         <mx:Object data="1" label="Merle"/>
         <mx:Object data="2" label="Colibri"/>
         <mx:Object data="3" label="Msange"/>
      </mx:ArrayCollection>
</mx:ComboBox>




<mx:Script>
	<![CDATA[
import mx.collections.ArrayCollection;
	    [Bindable]
	    public var listeOiseau:ArrayCollection = new ArrayCollection([
                {data:"1", label:"Merle"},
                {data:"2", label:"Colibri"},
                {data:"3", label:"Msange"}
	    ])
	
	]]>
</mx:Script>




<mx:ComboBox id="combo_oiseau" x="10" y="29" selectedIndex="1" dataProvider="{listeOiseau}">
</mx:ComboBox>






<mx:List x="10" y="59" dataProvider="{listeOiseau}" id="liste_oiseau" selectedIndex="0">
</mx:List>




<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">

<!-- Groupe !-->
<mx:RadioButtonGroup id="groupeRadioBoutons"/>

<!-- Boutons !-->
<mx:RadioButton id="rb_1" x="55" y="45.0" label="Masculin" groupName="groupeRadioBoutons" value="M" />
<mx:RadioButton id="rb_2" x="55" y="69.0" label="Fminin" groupName="groupeRadioBoutons" value="F" />


</mx:Application>





<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
	<mx:Script>
	    <![CDATA[
	        import mx.events.ItemClickEvent;
	        import mx.controls.Alert
	        public function selection(evenement:ItemClickEvent):void
	        {
	            Alert.show(String(evenement.item));
	        }
	
	    ]]>
	</mx:Script>
	
	<mx:Label id="lab" x="10" y="19" text="Votre sexe :"/>
	<mx:RadioButtonGroup id="groupeRadioBoutons" itemClick="selection(event)"/>
	<mx:RadioButton id="r1"  x="55" y="45.0" label="Masculin" value="M" groupName="groupeRadioBoutons"/>
	<mx:RadioButton id="r2" x="55" y="69.0" label="Fminin" value="F" groupName="groupeRadioBoutons"/>


</mx:Application>






	<mx:Script>
	    <![CDATA[
	        import mx.events.ItemClickEvent;
	        import mx.controls.Alert
	        public function selection(evenement:ItemClickEvent):void
	        {
	            Alert.show(String(evenement.label));
	        }
	
	    ]]>
	</mx:Script>





<mx:Label id="lab" x="26" y="29" text="Label : Prnom de l'utilisateur" width="88"/>
	<mx:Text id="txt" x="26" y="55" text="Text : Prnom de l'utilisateur" width="88"/>
<mx:TextInput x="10" y="10" text="TextInput" id=txt_ti/>
	<mx:TextArea x="10" y="40" height="128" text="TextArea : permet la saisie sur plusieurs lignes" id="txt_tm" />


<!-- Rcupration des donnes !-->
public var texteEcrit:String = nomZoneTexte.text


<!-- Alimentation de la zone de texte !-->
nomZoneTexte.text = "texte  afficher"

	


<mx:Script>
	    <![CDATA[
	
	        public function alimenterZoneDeTexte():void
	        {
	            zoneTexteRiche.htmlText = "<TEXTFORMAT LEADING='2'>" + 
	                    "<LI>" + 
	                    "<FONT FACE='Verdana' SIZE='12' COLOR='#0B333C' LETTERSPACING='0' KERNING='0'>" + 
	                    "<B>Ceci</B>" + 
	                    "<FONT SIZE='10'> est <FONT FACE='Times New Roman' SIZE='14'>" + 
	                    "un lien" + 
	                    "</FONT> " + 
	                    "vers " + 
	                    "<FONT COLOR='#0000FF'>" + 
	                    "<A HREF='http://www.google.fr' TARGET='_blank'>" + 
	                    "<U>Google</U>" + 
	                    "</A>" + 
	                    "</FONT>" + 
	                    "</FONT>" + 
	                    "</FONT>" + 
	                    "</LI>" + 
	                    "</TEXTFORMAT>"
	        }
	

	    ]]>
	</mx:Script>
	


	<mx:RichTextEditor x="10" y="10" width="354" id="zoneTexteRiche" creationComplete="alimenterZoneDeTexte()">
	</mx:RichTextEditor>




<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="alimenterDatagrid()">
<mx:Script>
	<![CDATA[
	    import mx.collections.ArrayCollection;
	
	     [Bindable]
	    public var tableauUtilisateurs:ArrayCollection = new ArrayCollection ([
	    {id:"1",prenom:"Jean",nom:"Dupont"},
	    {id:"2",prenom:"Annie",nom:"Lagrange"},
	    {id:"3",prenom:"Pierre",nom:"Jaures"}
	    ])
	
	    public function alimenterDatagrid():void
	    {
	        dg_utilisateur.dataProvider = tableauUtilisateurs;
	    }
	
	]]>
</mx:Script>
	<mx:DataGrid id="dg_utilisateur" x="71" y="98" width="329" >
	    <mx:columns>
	        <mx:DataGridColumn headerText="Id" dataField="id"/>
	        <mx:DataGridColumn headerText="Prenom" dataField="prenom"/>
	        <mx:DataGridColumn headerText="Nom" dataField="nom"/>
	    </mx:columns>
	</mx:DataGrid>


</mx:Application>





<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="alimenterDatagrid()">
<mx:Script>
	<![CDATA[
	    import mx.collections.ArrayCollection;
	
	     [Bindable]
	    public var tableauUtilisateurs:ArrayCollection = new ArrayCollection ([
	    {id:"1",prenom:"Jean",nom:"Dupont"},
	    {id:"2",prenom:"Annie",nom:"Lagrange"},
	    {id:"3",prenom:"Pierre",nom:"Jaures"}
	    ])
	
	    public function alimenterDatagrid():void
	    {
	        dg_utilisateur.dataProvider = tableauUtilisateurs;
	    }
	
	
	    import mx.controls.Alert
	    public function infoLigneSelectionnee():void
	    {
	        Alert.show(dg_utilisateur.selectedItem.id);
	    }
	
	
	]]>
</mx:Script>
	<mx:DataGrid id="dg_utilisateur" x="71" y="98" width="329" itemClick="ligneSelectionnee()" >
	    <mx:columns>
	        <mx:DataGridColumn headerText="Id" dataField="id"/>
	        <mx:DataGridColumn headerText="Prenom" dataField="prenom"/>
	        <mx:DataGridColumn headerText="Nom" dataField="nom"/>
	    </mx:columns>
	</mx:DataGrid>


</mx:Application>




<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="alimenterDatagrid()">
<mx:Script>
	<![CDATA[
	    import mx.collections.ArrayCollection;
	
        [Bindable]
        public var tableauUtilisateurs:ArrayCollection = new ArrayCollection ([
	    {id:"1",prenom:"Jean",nom:"Dupont"},
	    {id:"2",prenom:"Annie",nom:"Lagrange"},
	    {id:"3",prenom:"Pierre",nom:"Jaures"}
	    ])
	
	    public function alimenterDatagrid():void
	    {
	        dg_utilisateur.dataProvider = tableauUtilisateurs;
	    }
	
	
	    // Procdure de manipulation de la colonne colIdentifiant
	    public function manipulerColonne():void{
	
	        if (colIdentifiant.visible == false){
	            colIdentifiant.visible = true
	
	        }else{
	            colIdentifiant.visible = false
	        }
	
	    }
	
	]]>
</mx:Script>
	<mx:DataGrid id="dg_utilisateur" x="71" y="98" width="329" >
	    <mx:columns>
	
	        <!-- Mise en place d'un identifiant !-->
	        <mx:DataGridColumn id="colIdentifiant" headerText="Id" dataField="id"/>
	
	
	        <mx:DataGridColumn headerText="Prenom" dataField="prenom"/>
	        <mx:DataGridColumn headerText="Nom" dataField="nom"/>
	    	</mx:columns>
	</mx:DataGrid>
	
	<!-- Bouton faisant appel  la procdure manipulerColonne() !-->
	<mx:Button x="71" y="276" label="cacher" id="btn_cacherColonne" click="manipulerColonne()"/>


</mx:Application>




<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
	<![CDATA[
	
	import mx.collections.ArrayCollection;
[Bindable]
private var tableau:ArrayCollection = new ArrayCollection([
  {Pays:"Fance",
    children: [
        {Pays:"Importation",
                children: [{matiere:"Matire A", Quantite:10, Montant:5000},
                             {matiere:"Matire A", Quantite:30, Montant:9000},
                             {matiere:"Matire B", Quantite:800, Montant:25000},
                             {matiere:"Matire B", Quantite:562, Montant:764},
                             {matiere:"Matire C", Quantite:5, Montant:25658},

                            ]
        },
        {Pays:"Exportation",
                children: [{matiere:"Matiere B", Quantite:58564, Montant:30000}]
        }]
  }
	    ]);
	
	]]>
</mx:Script>

	
	<mx:AdvancedDataGrid
	    x="32" y="69"
	    id="adg1"
	    designViewDataType="tree"
	    width="634"
	    height="314">
	
	    <mx:dataProvider>
            <mx:HierarchicalData source="{tableau}"/>
      </mx:dataProvider>

        <mx:groupedColumns>
            <mx:AdvancedDataGridColumn headerText="Pays / Catgorie" dataField="Pays"/>
            <mx:AdvancedDataGridColumn headerText="Matire" dataField="matiere"/>

            <mx:AdvancedDataGridColumnGroup headerText="Quantit et montant">
	            <mx:AdvancedDataGridColumn headerText="Quantit" dataField="Quantite"/>
	            <mx:AdvancedDataGridColumn headerText="Montant en " dataField="Montant"/>
            </mx:AdvancedDataGridColumnGroup>   
        </mx:groupedColumns>

	</mx:AdvancedDataGrid>
	
</mx:Application>





<mx:AdvancedDataGrid
	    x="32" y="69"
	    id="adg1"
	    designViewDataType="tree"
	    width="634"
	    height="314"
	    sortExpertMode="true">
</mx:AdvancedDataGrid>




<mx:Script>
      <![CDATA[    
import mx.collections.ArrayCollection;
[Bindable]
        private var donnees:ArrayCollection = new ArrayCollection(
        [
         {station:"S1", skieurs:12000, annee:"2008"},
         {station:"S1", skieurs:11000, annee:"2007"},
         {station:"S1", skieurs:18000, annee:"2006"},
         {station:"S1", skieurs:17444, annee:"2005"},
         
         {station:"S2", skieurs:1200, annee:"2008"},
         {station:"S2", skieurs:4500, annee:"2007"},
         {station:"S2", skieurs:8000, annee:"2006"},
         {station:"S2", skieurs:500, annee:"2005"},
         
         {station:"S3", skieurs:12500, annee:"2008"},
         {station:"S3", skieurs:40000, annee:"2007"},
         {station:"S3", skieurs:8550, annee:"2006"},
         {station:"S3", skieurs:6000, annee:"2005"}
        
        ]);
]]>


<mx:OLAPCube name="cubeOlap" 
        dataProvider="{donnees}" 
        id="id_cube"
        >
         
        <mx:OLAPDimension name="dim_station">
            <mx:OLAPAttribute name="att_station" dataField="station"/>
            <mx:OLAPHierarchy name="hier_station" hasAll="true">
                <mx:OLAPLevel attributeName="att_station"/>
            </mx:OLAPHierarchy>
        </mx:OLAPDimension>
        
        <mx:OLAPDimension name="dim_skieurs">
            <mx:OLAPAttribute name="att_skieurs" dataField="skieurs"/>
            <mx:OLAPHierarchy name="hier_skieurs" hasAll="true">
                <mx:OLAPLevel attributeName="att_skieurs"/>
            </mx:OLAPHierarchy>
        </mx:OLAPDimension>
    
       <mx:OLAPDimension name="dim_annee">
            <mx:OLAPAttribute name="att_annee" dataField="annee"/>
            <mx:OLAPHierarchy name="hier_annee" hasAll="true">
                <mx:OLAPLevel attributeName="att_annee"/>
            </mx:OLAPHierarchy>
        </mx:OLAPDimension>
        
        <mx:OLAPMeasure name="SommeSkieurs" 
            dataField="skieurs" 
            aggregator="SUM"/>
</mx:OLAPCube>
<?xml version="1.0"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
        creationComplete="afficherOLAPDataGrid();">

    <mx:Script>
      <![CDATA[
        import mx.rpc.AsyncResponder;
        import mx.rpc.AsyncToken;
        import mx.olap.OLAPQuery;
        import mx.olap.OLAPSet;
        import mx.olap.IOLAPQuery;
        import mx.olap.IOLAPQueryAxis;
        import mx.olap.IOLAPCube;
        import mx.olap.OLAPResult;
        import mx.events.CubeEvent;
        import mx.controls.Alert;
        import mx.collections.ArrayCollection;
        

        [Bindable]
        private var donnees:ArrayCollection = new ArrayCollection(
        [
         {station:"S1", skieurs:12000, annee:"2008"},
         {station:"S1", skieurs:11000, annee:"2007"},
         {station:"S1", skieurs:18000, annee:"2006"},
         {station:"S1", skieurs:17444, annee:"2005"},
         
         {station:"S2", skieurs:1200, annee:"2008"},
         {station:"S2", skieurs:4500, annee:"2007"},
         {station:"S2", skieurs:8000, annee:"2006"},
         {station:"S2", skieurs:500, annee:"2005"},
         
         {station:"S3", skieurs:12500, annee:"2008"},
         {station:"S3", skieurs:40000, annee:"2007"},
         {station:"S3", skieurs:8550, annee:"2006"},
         {station:"S3", skieurs:6000, annee:"2005"}
        
        ]);
    
   

	    /*****************************
	     * 1 : CRATION DE LA REQUTE
	     * ***************************/
        private function creerRequete(cube:IOLAPCube):IOLAPQuery {
            
            // Instanciation de la classe OLAPQUery permettant de crer un objet requte
            var requete:OLAPQuery = new OLAPQuery;
            
            // Cration de "laxe" des lignes
            var ligne:IOLAPQueryAxis =
                requete.getAxis(OLAPQuery.ROW_AXIS);


            // Cration de "laxe" des colonnes
            var colonne:IOLAPQueryAxis =
                requete.getAxis(OLAPQuery.COLUMN_AXIS);

            // --- AJOUT DES STATIONS DANS LAXE DES LIGNES ---
             var lg_stations:OLAPSet = new OLAPSet;
             lg_stations.addElements(cube.findDimension("dim_station").findAttribute("att_station").children);
            ligne.addSet(lg_stations);


            // --- AJOUT DES ANNES DANS LAXE DES COLONNES ---
            var col_annee:OLAPSet= new OLAPSet;
            col_annee.addElements(
                cube.findDimension("dim_annee").findAttribute("att_annee").children);
            colonne.addSet(col_annee);


            // Envoi de la requte pour tre excute par la procdure executerRequte()
            return requete;
        }



    /*****************************
	     * 2 : EXCUTION DE LA REQUTE
	     * ***************************/
        private function executerRequete(event:CubeEvent):void {

            // Chargement du cube
            var cube:IOLAPCube = IOLAPCube(event.currentTarget);

           // Rception de la requte par la fonction creerRequete() prcdemment cre
            var requete:IOLAPQuery = creerRequete(cube);

           // Excution de la requte
            var execution:AsyncToken = cube.execute(requete);

            // Excution des procdures afficherResultat ou afficherErreur en fonction du rsultat dexcution de la requte
            execution.addResponder(new AsyncResponder(afficherResultat, afficherErreur));
        }



    /*****************************
	     * 3 : AFFICHAGE DU RSULTAT
	     * ***************************/
        private function afficherErreur(result:Object, token:Object):void {
            Alert.show("Erreur dexcution de la requte");
        }



        private function afficherResultat(result:Object, token:Object):void {
            if (!result) {
                Alert.show("Aucun rsultat  afficher");
                return;
            }
            // Mise  jour du composant OLAPDataGrid
            OLAPDg.dataProvider= result as OLAPResult;            
        }



    /*********************************************
	     * 4 : MISE  JOUR DU COMPOSANT OLAPDATAGRID
	     * Ds la fin de la cration de lapplication
	     * (creationCompleted)
	     * *******************************************/
         private function afficherOLAPDataGrid():void
         {
         // On rafrachit le cube qui va excuter la requte
         // Lexcution de la procdure executerRequete est appele
         // Aprs cration du cube : complete="executerRequete(event)"
         id_cube.refresh();
         }


      ]]>
    </mx:Script>

    <mx:OLAPCube name="cubeOLAP" 
        dataProvider="{donnees}" 
        id="id_cube"
        complete="executerRequete(event)">
         
        <mx:OLAPDimension name="dim_station">
            <mx:OLAPAttribute name="att_station" dataField="station"/>
            <mx:OLAPHierarchy name="hier_station" hasAll="true">
                <mx:OLAPLevel attributeName="att_station"/>
            </mx:OLAPHierarchy>
        </mx:OLAPDimension>
        
        <mx:OLAPDimension name="dim_skieurs">
            <mx:OLAPAttribute name="att_skieurs" dataField="skieurs"/>
            <mx:OLAPHierarchy name="hier_skieurs" hasAll="true">
                <mx:OLAPLevel attributeName="att_skieurs"/>
            </mx:OLAPHierarchy>
        </mx:OLAPDimension>
    
       <mx:OLAPDimension name="dim_annee">
            <mx:OLAPAttribute name="att_annee" dataField="annee"/>
            <mx:OLAPHierarchy name="hier_annee" hasAll="true">
                <mx:OLAPLevel attributeName="att_annee"/>
            </mx:OLAPHierarchy>
        </mx:OLAPDimension>
        
        <mx:OLAPMeasure name="TotSkieurs" 
            dataField="skieurs" 
            aggregator="SUM"/>
    </mx:OLAPCube>
    
    
  
	<!-- IMPLMENTATION DU COMPOSANT OLAPDATAGRID !-->
   <mx:OLAPDataGrid id="OLAPDg" width="100%" height="275"/>

</mx:Application>
	<mx:SWFLoader width="148" height="133" id="animation_flash"
	    scaleContent="true"
	    autoLoad="true"
	    source="animation.swf">
	</mx:SWFLoader>
public function chargerSWF():void
	{
	    animation_flash.source = "animation.swf";
	    animation_flash.load();
	}
	<mx:Image width="128" height="73"
	    id="img_image"
	    scaleContent="false"
	    source="image.gif"
	/>
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">

	<mx:VideoDisplay x="28" y="31" width="292" height="263" source="DSCF1311.flv" id="cpVideo" autoPlay="false"/>
	
	<mx:Button x="28" y="302" label="Jouer" click="cpVideo.play();" id="btn_play"/>
	
	<mx:Button x="94" y="302" label="Stop" id="btn_stop" click="cpVideo.stop();"/>
	
</mx:Application>



<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">

<mx:Script>
	<![CDATA[
	    // Procdure daffichage de la barre de progression du chargement de la vido
	    [Bindable]
	    public var texte:String
	
	    public function afficherProgression(e:ProgressEvent):void
	    {
	        // Affichage de la barre de progression
	        txt_progression.visible = true;
	
	        // Taille de la vido
	        var tailleVideo:Number = e.bytesTotal;
	
	        // Nombre doctets chargs:
	        var nbOctets:Number = e.bytesLoaded;
	
	        // Calcul du pourcentage de chargement
	        var pourcentage:Number = Math.round((nbOctets/tailleVideo)*100)
	
	        // Affichage du texte
	        texte = "Chargement de la vido : "+ String(pourcentage)+"%";
	
		    }

	]]>
</mx:Script>


	<mx:VideoDisplay progress="afficherProgression(event)" x="28" y="31" width="292" height="263" source="DSCF1311.flv" id="cpVideo" autoPlay="false"/>
	
	<mx:Button x="28" y="302" label="Jouer" click="cpVideo.play();" id="btn_play"/>
	
	<mx:Button x="94" y="302" label="Stop" id="btn_stop" click="cpVideo.stop();"/>
		
	
	
	<!-- AFFICHAGE DE LA PROGRESSION DU CHARGEMENT !-->
	<mx:Label text="{texte}"
              fontWeight="bold"
              fontSize="12"
              x="28"
              y="330"
              width="325" id="txt_progression"
              visible="false">
</mx:Label>
	
</mx:Application>
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
	
	<mx:Script>
	    <![CDATA[
	
	        [Bindable]
	        public var tableauCouleurs:Array = 	['0x0033CC','0x33CC00','0xFF0000','0xFFFF00','0xFF9900','0x9900CC','0xFF00FF'
	        ];
	
	    ]]>
	</mx:Script>
	
	<mx:ColorPicker id="selecteurCouleur" x="86" y="75" dataProvider="{tableauCouleurs}" />

</mx:Application>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">

	<mx:Script>
	    <![CDATA[
	
	         [Bindable]
	        public var moisFrancais:Array = ['Janvier','Fvrier','Mars','Avril','Mai','Juin','Juillet','Aot','Septembre','Octobre','Novembre','Dcembre'];
	
	
	    ]]>
	</mx:Script>
	
	
	<mx:DateChooser id="calendrier" x="35" y="31" monthNames="{moisFrancais}"/>
	<mx:DateField id="zoneDeTexte" x="35" y="219" formatString="DD/MM/YYYY" monthNames="{moisFrancais}"/>

</mx:Application>
	<mx:HSlider id=intervalHorizontal x="10" y="21"
	    tickInterval="2"
    minimum="0"
	    snapInterval="2"
	    maximum="20" labels="[0,2,4,6,8,10,12,14,16,18,20]"
	    width="270"/>
	<mx:NumericStepper id="numStepper" x="10" y="28"
	    minimum="0"
	    maximum="20"
	    stepSize="2"/>
	<mx:HorizontalList id="hzliste" x="10" y="28" width="381">

	    <mx:dataProvider>
        <mx:Array>
            <mx:Object label="M. Dupont" icon="@Embed(source='images/litOccupe.jpg')"/>
            <mx:Object label="--" icon="@Embed(source='images/litVide.jpg')"/>
            <mx:Object label="Mme Lesage" icon="@Embed(source='images/litOccupe.jpg')"/>
        </mx:Array>
    </mx:dataProvider>

	</mx:HorizontalList>
	<mx:LinkButton x="21" y="37"
	    label="Lien vers les ditions Eyrolles"
	    click="navigateToURL(new URLRequest('http://www.eyrolles.com'))" />
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">

<mx:Script>
	    <![CDATA[
	        [Bindable]
	        public var listeXML:XML = new XML(
	            <fichiers>
	                    <niveau1 label='N1'>
	                        <niveau2 label='N2'>
	                        <element id='1' label='Fichier 1'/>
	                        </niveau2>
	                    </niveau1>
	 
	                    <niveau1 label='N1'>
	                        <niveau2 label='N2'>
	                        <element id='2' label='Fichier 2'/>
	                        </niveau2>
	                    </niveau1>
	 
	                    <niveau1 label='N1'>
	                        <niveau2 label='N2'>
	                        <element id='3' label='Fichier 3'/>
	                        </niveau2>
	                    </niveau1>
	            </fichiers>
	                  );
    ]]>
</mx:Script>

	<mx:Tree x="10" y="10" width="258" height="376" id="arbre"
	    dataProvider="{listeXML.niveau1}" 
	    labelField="@label">
	</mx:Tree>

</mx:Application>
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">

<mx:Script>
	    <![CDATA[
	    import mx.events.ListEvent;
    import mx.controls.Alert

	         [Bindable]
	        public var listeXML:XML = new XML(
	                <fichiers>
	                    <niveau1 label='N1'>
	                        <niveau2 label='N2'>
	                        <element id='1' label='Fichier 1'/>
	                        </niveau2>
	                    </niveau1>
	
	                    <niveau1 label='N1'>
	                        <niveau2 label='N2'>
	                        <element id='2' label='Fichier 2'/>
	                        </niveau2>
	                    </niveau1>
	
	                    <niveau1 label='N1'>
	                        <niveau2 label='N2'>
	                        <element id='3' label='Fichier 3'/>
	                        </niveau2>
	                    </niveau1>
	                </fichiers>
	                  );

	
	public function afficherLabel(e:ListEvent):void
	{
	    Alert.show(e.currentTarget.selectedItem.@label);
	}
	
	    ]]>
</mx:Script>

	<mx:Tree x="10" y="10" width="258" height="376" id="arbre" 
	    dataProvider="{listeXML.niveau1}" 
	    labelField="@label" 
	    itemClick="afficherLabel(event)">
	</mx:Tree>

</mx:Application>
